/**
 * 简单的Markdown解析器，用于将Markdown格式转换成小程序rich-text支持的HTML
 */

/**
 * 将Markdown文本转换为小程序rich-text组件可以显示的HTML
 * @param {string} markdown - Markdown格式的文本
 * @returns {string} 转换后的HTML富文本
 */
function parseMd(markdown) {
  if (!markdown) return '';
  
  // 转换标题 ## 标题 -> <h2>标题</h2>
  let html = markdown
    .replace(/### (.*?)\n/g, '<h3 style="font-size: 16px; margin: 10px 0; color: #333;">$1</h3>')
    .replace(/## (.*?)\n/g, '<h2 style="font-size: 18px; margin: 15px 0; color: #333;">$1</h2>')
    .replace(/# (.*?)\n/g, '<h1 style="font-size: 20px; margin: 20px 0; color: #333;">$1</h1>');
  
  // 转换粗体 **文本** -> <strong>文本</strong>
  html = html.replace(/\*\*(.*?)\*\*/g, '<strong>$1</strong>');
  
  // 转换斜体 *文本* -> <em>文本</em>
  html = html.replace(/\*([^*]+)\*/g, '<em>$1</em>');
  
  // 转换列表 - 项目 -> <li>项目</li>
  html = html.replace(/- (.*?)(?:\n|$)/g, '<li style="margin-left: 20px;">$1</li>');
  
  // 转换段落和换行
  html = html.replace(/\n\n/g, '<div style="margin: 10px 0;"></div>');
  html = html.replace(/\n/g, '<br>');
  
  return html;
}

module.exports = {
  parseMd
};
